package com.gdziarmaga.webshop.book.services;

import java.util.List;

import com.gdziarmaga.webshop.book.model.Book;
import com.gdziarmaga.webshop.book.model.BookShortInfo;
import com.gdziarmaga.webshop.utils.filtering.BaseFilter;

public interface BookManager {

	Book getBookById(Long bookId);

	Book getBookByIsbn(String isbn);

	Book getBookByTitle(String title);

	Book getBookByIssue_year(int issue_year);

	Book getBookByPublisher(String publisher);

	Book getBookBySection(String section);

	Book getBookByPrice(float price);

	List<Book> getBooksByFilterObject(BaseFilter filter);

	List<BookShortInfo> getBooksShortInfosByFilterObject(BaseFilter filter);

	List<Book> getAll();

	void saveBook(final Book book);

	void deleteBook(Long bookId);

}
